package com.example.cloudamqp;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

/**
 * spring Cloud Bus 将分布式的节点和轻量的消息代理连接起来。这可以用于广播配置文件的更改或者其他的管理工作
 * 。一个关键的思想就是，消息总线可以为微服务做监控，也可以作为应用程序之间相互通讯。本文要讲述的是用AMQP实现通知微服务架构的配置文件的更改。
 */
@SpringBootApplication
@EnableEurekaClient
@RestController
@RefreshScope
public class CloudamqpApplication {

	public static void main(String[] args) {
		SpringApplication.run(CloudamqpApplication.class, args);
	}

	@Value("${helloamqp}")
	String amqp;

	@RequestMapping(value = "hello",method = RequestMethod.GET)
	public String hi(){
		return amqp;
	}
}
